Option Explicit On 
Option Strict On

Imports System
Imports System.Object
Imports System.Collections

Public Class SourceClass
    Private oCite As New CiteInfo
    Private bLWC As Boolean = False
    Private oLWC As New CiteInfo
    Private sScaleDenom As String = ""
    Private sMediaType As String = ""
    Private cTimePer As New Collection
    Private bSingleTime As Boolean = False 'set true if single date
    Private bRangeTime As Boolean = True 'set false if multiple dates; so default is range of dates
    Private bGregTime As Boolean = True   'set false if Geologic Age format for dates
    Private sCurrent As String = ""
    Private sCiteAbbrev As String = ""
    Private sContrib As String = ""

    Public Property SourceCite() As CiteInfo
        Get
            SourceCite = oCite
        End Get
        Set(ByVal Value As CiteInfo)
            oCite = Value
        End Set
    End Property

    Public Property boolLWC() As Boolean
        Get
            boolLWC = bLWC
        End Get
        Set(ByVal Value As Boolean)
            bLWC = Value
        End Set
    End Property

    Public Property SourceLWC() As CiteInfo
        Get
            SourceLWC = oLWC
        End Get
        Set(ByVal Value As CiteInfo)
            oLWC = Value
        End Set
    End Property

    Public Property ScaleDenom() As String
        Get
            ScaleDenom = sScaleDenom
        End Get
        Set(ByVal Value As String)
            sScaleDenom = Value
        End Set
    End Property

    Public Property Media() As String
        Get
            Media = sMediaType
        End Get
        Set(ByVal Value As String)
            sMediaType = Value
        End Set
    End Property

    Public Property TimePeriod() As Collection
        Get
            TimePeriod = cTimePer
        End Get
        Set(ByVal Value As Collection)
            cTimePer = Value
        End Set
    End Property

    Public Property boolSingle() As Boolean
        Get
            boolSingle = bSingleTime
        End Get
        Set(ByVal Value As Boolean)
            bSingleTime = Value
        End Set
    End Property

    Public Property boolRange() As Boolean
        Get
            boolRange = bRangeTime
        End Get
        Set(ByVal Value As Boolean)
            bRangeTime = Value
        End Set
    End Property
    Public Property Gregorian() As Boolean
        Get
            Gregorian = bGregTime
        End Get
        Set(ByVal Value As Boolean)
            bGregTime = Value
        End Set
    End Property

    Public Property Currentness() As String
        Get
            Currentness = sCurrent
        End Get
        Set(ByVal Value As String)
            sCurrent = Value
        End Set
    End Property

    Public Property CiteAbbrv() As String
        Get
            CiteAbbrv = sCiteAbbrev
        End Get
        Set(ByVal Value As String)
            sCiteAbbrev = Value
        End Set
    End Property

    Public Property Contrib() As String
        Get
            Contrib = sContrib
        End Get
        Set(ByVal Value As String)
            sContrib = Value
        End Set
    End Property
End Class
